Engineering Parallel Bi-Criteria Shortest Path Search
نویسندگان
چکیده
The multi-criteria shortest path problem is concerned with the minimization of multiple, possibly conflicting objectives such as travel time and highway tolls. Sanders and Mandow [60] present a parallel algorithm for this problem. They generalize Dijkstra’s [18] single-criterion shortest path algorithm to multiple criteria, while parallelizing all additional work induced by this generalization. For the bi-criteria case they even show that their algorithm performs less work than classic bi-criteria algorithms. We discuss in how far these theoretical results translate into an efficient implementation for modern shared-memory multiprocessors. In particular, we focus on a cache-efficient implementation of the bi-criteria case and present an extensive evaluation of the algorithm and its underlying data structures. The evaluation indicates that parallel bi-criteria shortest path search is feasible in practice. Our implementation exhibits significant speedups when solving difficult problem instances in parallel. In addition, even a sequential implementation is competitive to classic bicriteria shortest path algorithms. As an additional contribution of independent interest, we present parallel bulk updates for weight-balanced B-trees [3]. We use this technique to implement the Pareto queue, a multi-dimensional generalization of a priority queue proposed by Sanders and Mandow [60] and required by their algorithm. Zusammenfassung Bei der Berechnung von kürzesten Wegen gibt es häufig nicht nur ein, sondern mehrere interessante Kriterien, wie zum Beispiel die Reisezeit und die Mautkosten für die jeweilige Strecke. Sanders und Mandow [60] präsentieren einen parallel Algorithmus für dieses multi-kriterielle kürzesten Wege Problem. Bei dem Algorithmus handelt es sich um eine Verallgemeinerung des Algorithmus von Dijkstra [18] von einem auf mehrere Kriterien, jedoch unter Parallelisierung jeglicher zusätzlich entstehender Arbeit. Für den bi-kriteriellen Fall kann sogar gezeigt werden, dass im parallelen Algorithmus weniger Arbeit als in klassischen Ansätzen anfällt. In der vorliegenden Arbeit wird untersucht, inwieweit sich diese theoretischen Ergebnisse in die Praxis übertragen lassen. Wir erarbeiten hierzu eine cache-effiziente, bi-kriterielle Implementierung des Algorithmus für moderne Multiprozessorsysteme mit geteiltem Speicher. Unsere experimentellen Untersuchungen zeigen die Praktikabilität paralleler bi-kriterieller Suche. Die parallele Implementierung des Algorithmus liefert signifikante Beschleunigungen für Probleminstanzen mit unkorrelierten oder negativ korrelierten Kriterien. Darüber hinaus kann für diese Instanzen sogar gezeigt werden, dass selbst im sequentiellen Fall der parallele Algorithmus kompetitiv zu klassischen bi-kriteriellen Verfahren ist. Als zusätzlicher Beitrag allgemeineren Interesses präsentieren wir parallele Massenupdates für gewichtsbalancierte B-Bäume [3]. Wir verwenden diese Technik zur Realisierung der Pareto queue, einer mehrdimensionalen Verallgemeinerung von Prioritätswarteschlangen, welche von Sanders und Mandow [60] im Zuge ihres parallelen Algorithmus eingeführt wurde.
منابع مشابه
Two optimal algorithms for finding bi-directional shortest path design problem in a block layout
In this paper, Shortest Path Design Problem (SPDP) in which the path is incident to all cells is considered. The bi-directional path is one of the known types of configuration of networks for Automated Guided Vehi-cles (AGV).To solve this problem, two algorithms are developed. For each algorithm an Integer Linear Pro-gramming (ILP) is determined. The objective functions of both algorithms are t...
متن کاملA bi-objective model for a scheduling problem of unrelated parallel batch processing machines with fuzzy parameters by two fuzzy multi-objective meta-heuristics
This paper considers a bi-objective model for a scheduling problem of unrelated parallel batch processing machines to minimize the makespan and maximum tardiness, simultaneously. Each job has a specific size and the data corresponding to its ready time, due date and processing time-dependent machine are uncertain and determined by trapezoidal fuzzy numbers. Each machine has a specific capacity,...
متن کاملA New Algorithm for the Discrete Shortest Path Problem in a Network Based on Ideal Fuzzy Sets
A shortest path problem is a practical issue in networks for real-world situations. This paper addresses the fuzzy shortest path (FSP) problem to obtain the best fuzzy path among fuzzy paths sets. For this purpose, a new efficient algorithm is introduced based on a new definition of ideal fuzzy sets (IFSs) in order to determine the fuzzy shortest path. Moreover, this algorithm is developed for ...
متن کاملAcceleration of Shortest Path and Constrained Shortest Path Computation
We study acceleration methods for point-to-point shortest path and constrained shortest path computations in directed graphs, in particular in road and railroad networks. Our acceleration methods are allowed to use a preprocessing of the network data to create auxiliary information which is then used to speed-up shortest path queries. We focus on two methods based on Dijkstra’s algorithm for sh...
متن کاملFinding the Shortest Hamiltonian Path for Iranian Cities Using Hybrid Simulated Annealing and Ant Colony Optimization Algorithms
The traveling salesman problem is a well-known and important combinatorial optimization problem. The goal of this problem is to find the shortest Hamiltonian path that visits each city in a given list exactly once and then returns to the starting city. In this paper, for the first time, the shortest Hamiltonian path is achieved for 1071 Iranian cities. For solving this large-scale problem, tw...
متن کامل